﻿using System;
using System.ServiceModel;
using System.ServiceModel.Channels;
using System.Collections.Generic;

namespace WcfGeebaServer
{
    [ServiceContract]
    public interface ISListener
    {
        [OperationContract(IsOneWay = true, AsyncPattern = true)]
        [ServiceKnownType(typeof(ContentManage.GThread))]
        [ServiceKnownType(typeof(ContentManage.GPost))]
        IAsyncResult BeginUpdate(ContentManage.GThread message, DateTime timestamp, bool IsNotification, AsyncCallback callback, object state);
        void EndUpdate(IAsyncResult result);

        [OperationContract(IsOneWay = true, AsyncPattern = true)]
        [ServiceKnownType(typeof(ContentManage.GThread))]
        [ServiceKnownType(typeof(ContentManage.GPost))]
        IAsyncResult BeginEditMessage(string subforumTopic, ContentManage.GThread message, DateTime timestamp, AsyncCallback callback, object state);
        void EndEditMessage(IAsyncResult result);
    }
}